# Makefile.am
#
# $Id: Makefile.am 25656 2008-07-02 01:44:30Z guy $
#
# Wireshark - Network traffic analyzer
# By Gerald Combs <gerald@wireshark.org>
# Copyright 2001 Gerald Combs
# 
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.
# 
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
# 
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
#

include ../../Makefile.am.inc

if HAVE_WARNINGS_AS_ERRORS
AM_NON_GENERATED_CFLAGS = -Werror
endif

include Makefile.common

noinst_LTLIBRARIES = libdfilter_generated.la libdfilter.la

CLEANFILES = \
	libdfilter.a		\
	libdfilter.la		\
	libdfilter_generated.a 	\
	libdfilter_generated.la \
	*~

DISTCLEANFILES = \
	grammar.out	\
	grammar.c	\
	grammar.h

MAINTAINERCLEANFILES = \
	Makefile.in	\
	scanner.c	\
	scanner_lex.h

INCLUDES = -I$(srcdir)/../.. -I$(srcdir)/.. -I$(srcdir)/$(LEMON)

#Since code generated by lex may trigger gcc warnings, we are now generating two
#libraries.  A single library is generated with the lex code without the barrier
#"stop on warning". An other library is generated from the remaining source
#files with the "stop on warning" barrier.
libdfilter_la_SOURCES = $(NONGENERATED_C_FILES) $(NONGENERATED_HEADER_FILES)
libdfilter_la_CFLAGS = $(AM_NON_GENERATED_CFLAGS)

libdfilter_generated_la_SOURCES = \
	$(GENERATED_C_FILES)	\
	$(GENERATED_HEADER_FILES)

libdfilter_la_LIBADD = libdfilter_generated.la
libdfilter_la_DEPENDENCIES = libdfilter_generated.la

EXTRA_DIST = \
	$(GENERATOR_FILES)	\
	Makefile.common		\
	Makefile.nmake		

RUNLEX=$(top_srcdir)/tools/runlex.sh

scanner_lex.h : scanner.c

LEMON=../../tools/lemon

grammar.h : grammar.c 
grammar.c : $(LEMON)/lemon$(EXEEXT) $(srcdir)/$(LEMON)/lempar.c $(srcdir)/grammar.lemon
	$(LEMON)/lemon$(EXEEXT) t=$(srcdir)/$(LEMON)/lempar.c $(srcdir)/grammar.lemon || \
		(rm -f grammar.c grammar.h ; false)
